#
# Copyright (C) The Android Open Source Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#      http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#

cmake_minimum_required(VERSION 3.4.1)

# build native_app_glue as a static lib
set(${CMAKE_C_FLAGS}, "${CMAKE_C_FLAGS}")
add_library(native_app_glue STATIC
    ${ANDROID_NDK}/sources/android/native_app_glue/android_native_app_glue.c)

# now build app's shared lib
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=gnu++11 -Wall -Werror")

# Export ANativeActivity_onCreate(),
# Refer to: https://github.com/android-ndk/ndk/issues/381.
set(CMAKE_SHARED_LINKER_FLAGS
    "${CMAKE_SHARED_LINKER_FLAGS} -u ANativeActivity_onCreate")

## add assimp 

add_library(lib_assimp STATIC IMPORTED)
set_target_properties(lib_assimp PROPERTIES IMPORTED_LOCATION
    ${CMAKE_CURRENT_SOURCE_DIR}/static_libs/libassimp.so)


add_library(native-activity SHARED main.cpp utils.cpp
    001_gl_color_app.cpp
    002_gl_point_app.cpp
    003_gl_lines_app.cpp
    004_gl_triangle_app.cpp
    005_gl_regular_polygons.cpp
    006_gl_cube_app.cpp
    007_gl_texture.cpp
    008_gl_texture2.cpp
    009_gl_texture3.cpp
    0010_gl_transform.cpp
    0011_gl_transform2.cpp
    0012_gl_coordinate.cpp
    0013_gl_camera.cpp
    0014_gl_light.cpp
    0015_gl_light_diffuse.cpp
    0016_gl_light_specular.cpp
    0017_gl_light_material.cpp
    0018_gl_light_maps.cpp
    0019_gl_light_maps_specular.cpp
    0020_gl_light_directional.cpp
    0021_gl_light_point.cpp
    0022_gl_light_spot.cpp
    )

target_include_directories(native-activity PRIVATE
    ${ANDROID_NDK}/sources/android/native_app_glue
    ${CMAKE_CURRENT_SOURCE_DIR}/include/assimp)

# add lib dependencies
target_link_libraries(native-activity
    android
    native_app_glue
    EGL
    GLESv3
    log
    lib_assimp)
